﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.Text;
using WCFAlmacen.Dominio;

namespace WCFAlmacen
{
    // NOTA: puede usar el comando "Rename" del menú "Refactorizar" para cambiar el nombre de interfaz "IIServiceMateriales" en el código y en el archivo de configuración a la vez.
    [ServiceContract]
    public interface IServiceMateriales
    {
        [OperationContract]
        List<GRCategoria> ListarCategorias();

        [OperationContract]
        GRCategoria ObtenerDatosCategoria(Int32 intCodCategoria);

        [OperationContract]
        List<GRSubCategoria> Listar_SubCategorias();

        [OperationContract]
        GRSubCategoria ObtenerDatosSubCategoria(Int32 intCodSubCategoria);

        [OperationContract]
        List<GRSubCategoria> Listar_SubCategoria_X_Categoria(Int32 intCodCategoria);

        [OperationContract]
        List<GRMaterial> ListarMateriales();

        [OperationContract]
        GRMaterial ObtenerDatosMateriales(Int32 intCodMaterial);

        [OperationContract]
        List<GRMaterial> Listar_Materiales_X_SubCategoria(Int32 intCodSubCategoria);

        [OperationContract]
        List<GRUniMedida> ListarUnidadMedidas();

        [OperationContract]
        GRUniMedida ObtenerUnidadMedida(Int32 intCodigoUnMedida);

        [OperationContract]
        List<GREstadoMat> ListarEstadoMateriales();

        [OperationContract]
        GREstadoMat ObtenerDatosEstadoMaterial(Int32 intCodEstadoMaterial);


    }
}
